Partial Response Maximum Likelihood (PRML) techniques have been long associated with digital communication channels. See for example, Y. Kabal and S. Pasupathy, "Partial-Response Signaling", IEEE Trans. Commun. Technol., Vol. COM-23, pp. 921-934, September 1975; R. W. Lucky, J. Salz and E. J. Weldon, Jr., PRINCIPLES OF DATA COMMUNICATIONS, New York: McGraw-Hill, 1968; G. D. Forney, Jr., "The Viterbi Algorithm", Proc. IEEE, Vol. 61, pp. 268-278, March 1973; and J. M. Wozencraft and I. M. Jacobs, PRINCIPLES OF COMMUNICATION ENGINEERING, New York: Wiley, 1965. Applying the principles of PRML signaling and detection to recording channels of mass storage devices is also well known. See for example, G. D. Forney, "Maximum Likelihood Sequence Estimation of Digital Sequences in the Presence of Intersymbol Interference", IEEE Trans. Inform. Theory, Vol. IT-18, pp. 363-378, May 1982; H. Kobayashi, "Application of Probabilistic Decoding to Digital Magnetic Recording", IBM. J. RES. DEVELOP., Vol. 15, pp. 64-74, January 1971; and K. Nishimura and K. Ishii, "A Design Method for Optimal Equalization in Magnetic Recording Channels with Partial Response Channel Coding", IEEE Trans. Magn., Vol. MAG-19, pp. 1719-1721, September 1983.
Data detection in conventional prior art peak-detection magnetic recording channels is achieved by first differentiating the analog signal and then processing the differentiated signal with a zero-crossing detector to determine the presence or absence of a zero-crossing event within the detection window. Data detection in a digital communication channel is generally based on periodically sampling the amplitude of the transmitted signal.
In the absence of noise or other imperfections, the zero crossings of the derivative signal in peak detection occur only at times corresponding to the clocktimes at which a transition was written. Enhancements such as precompensation, run-length-limited (RLL) codes and more sophisticated detectors have extended the performance of peak-detection systems.
In sampled or clocked detection, the amplitude of the signal is periodically sampled and the data which those samples represent is interpreted therefrom. Maximum likelihood (ML) detection minimizes the probability of error when the samples are interpreted.
Sampled amplitude detection anticipates the presence of interfering non-zero sample amplitudes corresponding to each input at more than one sampling time. Such signals are referred to as partial response (PR) signals, and channels which transmit PR signals are often referred to as PR channels.
ML detection is typically used in PR channels (hereafter, PRML channels) although, barring cost and complexity considerations, it can be used in peak detection and other applications as well. Typically, for a given channel bandwidth, a PR signal permits transmission of data at a higher rate than full response signals which have zero amplitude at all but one of the sampling times. In addition to filtering the readback signal to condition it for most accurate detection and interpretation, other techniques, such as encoding the data, are used to enhance performance of ML detectors.
Encoding data for use with recording channels is also known. The (d,k) constraints, which specify the minimum and maximum run lengths of zeroes, respectively, in RLL codes used in peak-detection systems, reduce intersymbol interferences while maintaining self-clocking characteristics of the data signal. See, for example, IBM TECHNICAL DISCLOSURE BULLETIN, Vol. 28, No. 5, October 1985, pp. 1938-1940, entitled "Improved Encoder and Decoder for a Byte-Oriented (0,3) 8/9 Code", and IBM TECHNICAL DISCLOSURE BULLETIN, Vol. 18, No. 1, June 1975, pp. 248-251, entitled "Encoder and Decoder for a Byte-Oriented (0,3) 8/9 Code".
In a PRML channel, a channel code can also be used to provide clocking and automatic gain control (AGC) information. Since the maximum run length of nominally zero samples must be limited, the k constraint is still appropriate when specifying the channel code requirements for PRML channels. However, RLL codes with d greater than zero are not necessary in PRML channels because compensation for ISI is inherent in the ML detector. Thus, there is no need to reduce interference by coding with a d constraint.
On the other hand, the k constraint is not the only constraint required for the PRML channel. Since ML detection requires that more than one option be kept open with respect to recent past data estimators, an additional constraint is desired to limit both detector delay and hardware complexity. If a data sequence of the input signal is demultiplexed into an even indexed sample subsequence and an odd indexed sample subsequence, and ML detection is applied to each subsequence independently, a constraint on the number of successive nominally zero samples in each subsequence adequately limits the detector delay and hardware. Thus, in terms of NRZI data representation, the required limitation is on the maximum number of sequential zeroes in both the even-indexed and the odd-indexed subsequences. The maximum number of sequential NRZI zeroes in either subsequence is referred to as the k.sub.1 constraint, and is analogous to the k constraint for the overall sequence of data.
Codes having run length constraints restrict the allowed code sequences to less than 2.sup.n sequences possible, where n specifies the number of data symbols in a sequence. The rate of such a code is less than 1 data bit to 1 code bit, which can be expressed as a ratio of small integers. Thus, if an 8-bit data byte is mapped into a 9-bit codeword, the code rate is 8/9.